<?php
header("Content-type: text/html; charset=utf-8");
/********************
1、写入内容到文件,追加内容到文件
2、打开并读取文件内容
 ********************/
/*$file  = 'log/log.txt';//要写入文件的文件名（可以是任意文件名），如果文件不存在，将会创建一个
$content = "第一次写入的内容\n";
// $exist = file_exists($file);
if($f  = file_put_contents($file, $content,FILE_APPEND)){// 这个函数支持版本(PHP 5)
    echo "写入成功。<br />";
}
else
{
    echo "写入失败";
}
$content = "第二次写入的内容";
if($f  = file_put_contents($file, $content,FILE_APPEND)){// 这个函数支持版本(PHP 5)
    echo "写入成功。<br />";
}
if($data = file_get_contents($file)){; // 这个函数支持版本(PHP 4 >= 4.3.0, PHP 5)
    echo "写入文件的内容是：$data";
}*/

class ZSLogTool {

    public static function info($infostr)
    {
        $year = date("Y", time()+8*3600);
        $monthday = date('md', time()+8*3600);
        $datetime = date('Y:m:d h:i:sa',time()+8*3600);

        $path = "log/$year";
        $file  = "$path/$monthday.txt";//要写入文件的文件名（可以是任意文件名），如果文件不存在，将会创建一个

        echo "日志文件:".$file;
        echo "<br/>";
        // 查看路径是否创建
        if (false==file_exists($path))
        {
            $createRes = self::createfile($path);
            echo "createRes:".json_encode($createRes);
        }

        // 线程id获取失败
//        $thread_id = zend_thread_id();

        $pid = getmygid();

        $content = "INFO $datetime pid:$pid  $infostr\n";

        $exist = file_exists($file);
        if (false == $exist)
        {
            // 创建文件
            $b = fopen($file, "w");
            if (null==$b)
            {
                $errstr = '日志文件创建失败(请检查权限):'.$file;
                echo $errstr;
                return $errstr;
            }
            else
            {
                echo "创建成功:".$b;
            }
            echo "<br/>";
        }

        if($f  = file_put_contents($file, $content,FILE_APPEND)){// 这个函数支持版本(PHP 5)
            echo "写入成功。<br />";
        }
        else
        {
            echo "写入失败";
        }
    }

    public static function err($errstr)
    {
        $year = date("Y", time()+8*3600);
        $monthday = date('md', time()+8*3600);
        $datetime = date('Y:m:d h:i:sa',time()+8*3600);

        $path = "log/$year";
        $file  = "$path/$monthday.txt";//要写入文件的文件名（可以是任意文件名），如果文件不存在，将会创建一个

        echo "日志文件:".$file;
        echo "<br/>";
        // 查看路径是否创建
        if (false==file_exists($path))
        {
            $createRes = self::createfile($path);
            echo "createRes:".json_encode($createRes);
        }

        // 线程id获取失败
//        $thread_id = zend_thread_id();

        $pid = getmygid();

        $content = " ERR $datetime pid:$pid  $errstr\n";

        $exist = file_exists($file);
        if (false == $exist)
        {
            // 创建文件
            $b = fopen($file, "w");
            if (null==$b)
            {
                $errstr = '日志文件创建失败(请检查权限):'.$file;
                echo $errstr;
                return $errstr;
            }
            else
            {
                echo "创建成功:".$b;
            }
            echo "<br/>";
        }

        if($f  = file_put_contents($file, $content,FILE_APPEND)){// 这个函数支持版本(PHP 5)
            echo "写入成功。<br />";
        }
        else
        {
            echo "写入失败";
        }
    }

    //创建目录
    /*
   *  @param  createfile //创建文件夹
   *  @param  createpath  // 创建的路径
   *  @param  file_exists() // 查看是否文件夹有同样的目录
   *  @param  file // 创建的的路径
   *  @param  mkdir // 创建文件夹的函数
   *  @param 2017/11/20  8:57
   */
    static function createfile($file){
        $createpath = $file;
        $_createpath = iconv('utf-8', 'gb2312', $createpath);
        if (file_exists($_createpath) == false)
        {
            //检查是否有该文件夹，如果没有就创建，并给予最高权限
            if (mkdir($_createpath, 0700, true)) {
                $value['file'] ='文件夹创建成功';
                $value['success']='success';
            } else {
                $value['file'] ='文件夹创建失败';
                $value['fail']='fail';
            }
        }
        else
        {
            $value['file'] ='文件夹已存在';
            $value['fail']='fail';
        }
        return $value;
    }



}
/*echo "data:".date("Y", time()+8*3600);
echo "<br/>";

echo "data:".date("m", time()+8*3600);
echo "<br/>";

echo "data:".date("d", time()+8*3600);
echo "<br/>";

echo "data:".date("Y-m-d h:i:sa", time()+8*3600);
echo "<br/>";*/

//ZSLogTool::info('这是一条info日志');
//ZSLogTool::err('这是一条err日志');
?>